package com.imooc.framework.quartz;

import cn.hutool.core.lang.TypeReference;
import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.JSON;

import java.lang.reflect.Type;
import java.util.List;
import java.util.Map;

public class JSONTest {
//    public static void main(String[] args) {
//        String str = "[{\"A\": \"喝水\"}, {\"B\": \"喝牛奶\"}, {\"C\": \"虫子\"}, {\"D\": \"吃牛肉\"}, {\"E\": \"吃羊肉\"}]";
//        List<Map<String, String>> listMap = JSON.parseObject(str, new TypeReference<List<Map<String, String>>>() {
//        });
//        System.out.println("listMap = " + listMap);
//        System.out.println("listMap = " + listMap.get(1).get("B"));
//    }

    public static void main(String[] args) {
        // 假设我们有一个JSON字符串表示一个对象数组
        String jsonString = "[{\"name\":\"John\",\"age\":30},{\"name\":\"Jane\",\"age\":25}]";

        // 使用Hutool的JSONUtil.toList()方法将JSON字符串转换为List<Map>)
        List<Map<String, Object>> list = JSONUtil.toBean(jsonString, new TypeReference<List<Map<String, Object>>>() {
            @Override
            public Type getType() {
                return super.getType();
            }
        },true);

        // 输出转换后的List<Map>
        for (Map<String, Object> map : list) {
            System.out.println(map);
        }
    }
}
